package com.xuecheng.api.content;

import com.xuecheng.api.content.model.qo.QueryCourseModel;
import com.xuecheng.api.content.model.vo.CourseAuditVO;
import com.xuecheng.common.domain.page.PageRequestParams;
import com.xuecheng.common.domain.page.PageVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;

/**
 * 课程审核
 *
 * @author lily
 * @date 2021/12/13
 */
@Api(value = "课程基本信息管理-运营 Api", tags = "课程基本信息管理-运营", description = "课程基本信息业务管理-运营")
public interface CourseAuditApi {


    /**
     * 查询课程列表
     *
     * @param params PageRequestParams 分页参数
     * @param model QueryCourseModel 查询请求参数
     * @return com.xuecheng.common.domain.page.PageVO
     * @author Lily
     * @date 2021/12/13 21:15
     * @paramType [com.xuecheng.common.domain.page.PageRequestParams, com.xuecheng.api.content.model.qo.QueryCourseModel]
     * @description
     */
    @ApiOperation("课程基础信息条件分页查询-运营")
    @ApiImplicitParam(value = "model", dataType = "QueryCourseModel", paramType = "body")
    PageVO queryCourseList(PageRequestParams params, QueryCourseModel model);


    /**
     * 课程审核(提交的课程才可审核)
     *
     * @param auditVO 审核结果
     * @author Lily
     * @date 2021/12/13 21:51
     * @paramType [com.xuecheng.api.content.model.vo.CourseAuditVO]
     * @description
     */
    @ApiOperation("课程审核(提交的课程才可审核)")
    @ApiImplicitParam(name = "auditVO", value = "课程信息VO", required = true, dataType = "CourseAuditVO", paramType = "body")
    void approveCourse(CourseAuditVO auditVO);
}